<template>
  <!-- 点击事件处理区域 -->
  <div class="" @click="handleClick(devices)">
    <!-- 插槽，允许外部传入内容，并提供 loading 状态 -->
    <slot v-bind="{ loading }" />

    <!-- 任务对话框组件 -->
    <TaskDialog ref="taskDialogRef"></TaskDialog>
  </div>
</template>

<script setup>
// 导入任务对话框组件
import TaskDialog from './components/TaskDialog/index.vue'

// 定义组件接收的属性
const props = defineProps({
  devices: {
    type: Array,
    default: () => [],
  },
})

// 定义 loading 状态
const loading = ref(false)

// 获取任务对话框组件的引用
const taskDialogRef = ref(null)

/**
 * 处理点击事件
 * @param {Array} devices - 设备列表，传递给任务对话框
 */
function handleClick(devices) {
  taskDialogRef.value.open({ devices })
}
</script>

<style></style>

